package backend;

import helden.plugin.werteplugin.PluginZauberInfo;

/**
 * 
 * @author Christian
 * 
 * @since 0.15
 * 
 *        Diese Klasse verbindet ein Zauber mit der BesitzerId aus dem HeldenTool
 */
public class AktiverZauber implements Comparable<AktiverZauber> {
	
	/**
	 * 
	 */
	private String heldenId = "";
	
	/**
	 * 
	 */
	private PluginZauberInfo zauber = null;
	
	/**
	 * 
	 * @param heldenID
	 *            Id des Helden zu dem die Variante gehört
	 * @param zauber
	 *            Zauber der Variante
	 */
	public AktiverZauber(String heldenID, PluginZauberInfo zauber) {

		this.zauber = zauber;
		this.heldenId = heldenID;
	}
	
	/**
	 * 
	 * @return ID des Helden
	 */
	public String getHeldenId() {

		return heldenId;
	}
	
	/**
	 * @return Gibt den Namen des Zaubers zurück (Verwendung im Zaubertable)
	 */
	public String toString() {

		return zauber.getZauberName();
	}
	
	/**
	 * 
	 * @return Gibt den Zauber der Variante zurück
	 */
	public PluginZauberInfo getZauber() {

		return zauber;
	}
	
	/**
	 * Nötig für den Tablesorter.
	 * @param o Aktiver Zauber
	 * 
	 * @return Gibt den Integer für die sortierung zurück
	 */
	@Override
	public int compareTo(AktiverZauber o) {

		return toString().compareTo(o.toString());
	}
}
